﻿using System;
using System.Collections.Generic;

using UnityEngine;
using UnityEngine.UI;
using ALPackage;
using HYOK;


/**************
 * 游戏主摄像头脚本对象
 **/
public class MainCameraMono : _AALMonoMain
{
    public static MainCameraMono selfInstance { get { return (MainCameraMono)instance; } }


    public Action<bool> onApplicationFocus;//当程序获得或者是去焦点时

    public Action<bool> onApplicationPause;//当程序切后台时



    /// <summary>
    /// 当服务器版本过低的时候的触发效果
    /// </summary>
    public override void onClickServerVersionLowerErr()
    {

    }

    /// <summary>
    /// 当Hotfix版本过低的时候的触发效果
    /// </summary>
    public override void onClickHotfixVersionLowerErr()
    {

    }

    /****************
     * 当发生了未知错误时
     **/
    public override void onUnknowErrorOccurred(Exception _e)
    {

    }

    /********************
     * 当执行窗口大小更改时
     **/
    public override void onClientScreenOnSize(int _newWidth, int _newHeight)
    {

    }

    /********************
     * 在ALGUI响应了鼠标操作时触发的事件，一般不做处理
     **/
    //protected override void _onALGUICatchMouse() { }
    /********************
     * 子类用于在GUI未处理鼠标操作时进行的鼠标操作处理函数，一般不做处理
     **/
    //protected override void _dealMouseActionWhenALGUIDidNotCatchMouse() { }
    //是否使用刘海
    public override bool forceLiuHai
    {
        get
        {
            return base.forceLiuHai;
        }
    }

    public override int curVersionNum => 0;

    public override int curServerVersionNum => 0;

    // Use this for initialization
    protected internal void Awake()
    {

    }

    /********************
     * 在脚本开始运行的时候调用的函数
     **/
    protected override void _onStart()
    {
        // Disable screen dimming  
        Screen.sleepTimeout = SleepTimeout.NeverSleep;

        QueueMgr.instance.AddNode(new GNodeCity());

    }



    /********************
     * 子类用于处理GUI判断前的操作处理
     **/
    protected override void _onPreGuiUpdate()
    {

    }

    /********************
     * 子类用于处理正常帧处理操作
     **/
    protected override void _onUpdate()
    {

    }

    public void LateUpdate()
    {

    }

    public override void onClickVersionLowerErr()
    {
        throw new NotImplementedException();
    }
}
